package com.zhang.strategy.example;

/**
 * @author ElloeStudy(Sifa Zhang)
 * @create 2022-02-26 16:26
 * To: 真常应物，真常得性，常清常静，常清静矣
 */

// 策略模式 ocp模式 扩展性 策略即锦囊妙计 可以一直增加下去而不需要修改源代码
public class ZhaoYun {
    public static void main(String[] args) {
        Context context;
        context = new Context(new BackDoor());  // 具体使用的锦囊为BackDor
        context.operate();  // 实际使用的为锦囊妙计的operate方法

        context = new Context(new GivenGreenLight());
        context.operate(); // 使用同一个接口，方便ocp（开闭原则1）扩展

        context = new Context(new BlockEnemy());
        context.operate();
    }
}
